2005年06月02日
川俣晶の縁側無意味監獄 total 3107 count

エクストリーム・プログラミングで銀行のオンラインシステムが作れるか?

Written By: 川俣 晶連絡先

 暇がないので、無意味監獄に無意味な文章として放言のみ書いておきます。

 放言なので、賢明なる読者諸君は内容を信じないように。

 なので、クレームは受け付けません。念のため。

[雑記/備忘]ウォーターフォール擁護論(1) 11:06

 より、「銀行や新聞社のいわゆる“オンラインシステム”の構築に参加した知人」の発言として。

ウォーターフォールはダメだダメだと言うヤツが多いけど、そういうヤツはウォーターフォールの勉強したことあるのかねぇ? XPがイイって言うなら、XPでオンラインシステム作ってみぃ、エッ、できるのか、ンッ、できるか? 作ってみろよ、ホレ、ホレ。

 これを読んで思ったのは、この発言者は本来あるべき基礎や常識ができていないな、と言うことです。"オンラインシステム"には関わったことがないので具体的には分かりませんが、おそらくは「大規模」であり「複数の組織が関わるネットワーク」を含むものだろうと推測して、話を進めます。

 まず、XP=エクストリーム・プログラミングとは、小規模開発用として生まれて発展したものであって、大規模プロジェクトに使っても良い結果を出しません。

 規模が変わると性質が変わり、その結果として最適な手法も異なるというのは、工学の常識かと思っていたら、情報工学の世界では必ずしも常識ではないようで、ちょっと頭が痛いです。

 つまり、規模の違いを無視して話をしている時点で、「本来あるべき基礎や常識ができていない」と私は見なします。

 次に、「複数の組織が関わるネットワーク」というのもXPの長所を活かしにくい対象です。XPとは、一言で言えば「変化を抱擁する」方法論ですが、複数の組織が関わるネットワークのプロトコルは気軽に変えることができません。組織の壁の向こう側にある複数のシステムも含めて、全てを一斉に変更するというのは、あまりにコストが掛かり過ぎて現実的ではありません。つまり、この手のシステムは外部の制約により変化させにくいために、変化を抱擁するXPとは相性が悪いと言えます。

 以上をまとめると、「「常識」」で考えれば明らかに相性の悪い事例を持ち出して、どうだできないだろうと言っているだけ。つまり、黒猫を指さして、白猫ではないと言っているだけで、意味のあることは言っていないと感じます。言っている本人は何が素晴らしい発見をしたつもりかもしれませんが、当然の「「常識」」を踏まえた人には「今更何を言ってるんだ?」というリアクションにしかなりません。

 もっとも、この問題の裏側にあるのは、エクストリーム・プログラミングを信奉していると口では言いながら、それが何であるか分かっておらず、明らかにケント・ベックの白本に書いてあることに矛盾する主張を平然と行う困った人達の存在だろうという気はします。そういう人達の言い分を真に受けてしまえば、こういう言葉も言いたくなるでしょう。しかし、それを真に受けるということが、常識と勉強に対する意欲が欠落している傍証になってしまいます。

 このあたりは、XML界とそっくり。明らかにXML勧告に書いてあることと矛盾することを平然と言う自称XML信奉者がいかに多いことか (笑。

檜山さん wrote:

まー、この意見(誇張あり(笑))は技術的見解と言うより多分にエモーションが入ってますが、数十人、数百人、あるいはもっと大規模なプロジェクトになると、さすがにアジャイルの信奉者でも「それは守備範囲外だ」と言うのではないでしょうか。

 正しくXPを理解しているXPerなら、「さすがに」ではなく「当然の常識を教え諭すように」言うでしょうねぇ。「それは守備範囲外だ」と。

 アジャイルは良く分かりませんが、少なくともXPに関しては……。

私の立場 §

 ちなみに私の立場としては。

 XPはおそらく正しいだろうという推定を含む評価を下し、一応それが正しいという前提で扱っています。

 しかし、XPとは似て非なるアジャイルであるとか、XPの独自拡張といったものについては、眉に唾を付けて見ています。